package top.qitun.model.response;

import java.util.Collection;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import com.google.common.collect.ImmutableList;

import top.qitun.bizz.shop.ttable.entity.TTable;
import top.qitun.model.response.RestfulResponse;

/**
 * @author Zhao Junjian
 */
//@Getter
//@Setter
//@ToString(callSuper = true)
//@EqualsAndHashCode(callSuper = true)
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class ObjectCollectionResponse<T> extends RestfulResponse {
    private static final long serialVersionUID = 1862906172390850647L;

    private Collection<T> dataSet;
    
    public ObjectCollectionResponse(int code, String message, Collection<T> data) {
		this.dataSet = data;
		this.setCode(code);
		this.setMessage(message);
	}

	public ObjectCollectionResponse(int code, String message) {
		this.setCode(code);
		this.setMessage(message);
	}
	
	public ObjectCollectionResponse() {

	}

    public Collection<T> getDataSet() {
		return dataSet;
	}

	public void setDataSet(Collection<T> dataSet) {
		this.dataSet = dataSet;
	}

}
